<?php

namespace App\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * TkFlowNodes
 *
 * @ORM\Table(name="tk_flow_nodes", indexes={@ORM\Index(name="vcc_flow_index", columns={"vcc_id", "flow_id"})})
 * @ORM\Entity
 */
class TkFlowNodes
{
    /**
     * @var int
     *
     * @ORM\Column(name="id", type="integer", nullable=false)
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="IDENTITY")
     */
    private $id;

    /**
     * @var int
     *
     * @ORM\Column(name="vcc_id", type="integer", nullable=false, options={"comment"="企业ID"})
     */
    private $vccId = '0';

    /**
     * @var int
     *
     * @ORM\Column(name="flow_id", type="integer", nullable=false, options={"comment"="流程ID"})
     */
    private $flowId = '0';

    /**
     * @var string
     *
     * @ORM\Column(name="node_name", type="string", length=100, nullable=false, options={"comment"="节点名称"})
     */
    private $nodeName;

    /**
     * @var bool
     *
     * @ORM\Column(name="node_order", type="boolean", nullable=false, options={"comment"="节点顺序（升序）"})
     */
    private $nodeOrder;

    /**
     * @var int
     *
     * @ORM\Column(name="form_id", type="integer", nullable=false, options={"comment"="表单ID"})
     */
    private $formId = '0';

    /**
     * @var int
     *
     * @ORM\Column(name="expire_hours", type="integer", nullable=false, options={"comment"="过期小时数，即该节点从提交时间开始多长时间后属于超时未处理"})
     */
    private $expireHours = '0';

    /**
     * @var bool
     *
     * @ORM\Column(name="participant_type", type="boolean", nullable=false, options={"default"="1","comment"="参与者类型（1部门2角色3人员4创建人）"})
     */
    private $participantType = '1';

    /**
     * @var string
     *
     * @ORM\Column(name="participants", type="string", length=255, nullable=false, options={"comment"="具体的参与者ID，多个ID之间逗号分隔"})
     */
    private $participants;

    public function getId(): ?int
    {
        return $this->id;
    }

    public function getVccId(): ?int
    {
        return $this->vccId;
    }

    public function setVccId(int $vccId): self
    {
        $this->vccId = $vccId;

        return $this;
    }

    public function getFlowId(): ?int
    {
        return $this->flowId;
    }

    public function setFlowId(int $flowId): self
    {
        $this->flowId = $flowId;

        return $this;
    }

    public function getNodeName(): ?string
    {
        return $this->nodeName;
    }

    public function setNodeName(string $nodeName): self
    {
        $this->nodeName = $nodeName;

        return $this;
    }

    public function getNodeOrder(): ?bool
    {
        return $this->nodeOrder;
    }

    public function setNodeOrder(bool $nodeOrder): self
    {
        $this->nodeOrder = $nodeOrder;

        return $this;
    }

    public function getFormId(): ?int
    {
        return $this->formId;
    }

    public function setFormId(int $formId): self
    {
        $this->formId = $formId;

        return $this;
    }

    public function getExpireHours(): ?int
    {
        return $this->expireHours;
    }

    public function setExpireHours(int $expireHours): self
    {
        $this->expireHours = $expireHours;

        return $this;
    }

    public function getParticipantType(): ?bool
    {
        return $this->participantType;
    }

    public function setParticipantType(bool $participantType): self
    {
        $this->participantType = $participantType;

        return $this;
    }

    public function getParticipants(): ?string
    {
        return $this->participants;
    }

    public function setParticipants(string $participants): self
    {
        $this->participants = $participants;

        return $this;
    }


}
